package top.suven.base.http.admin.user.model;

import top.suven.base.core.mybatis.crud.*;

import java.util.Date;
/**   
 * @Title: User.java
 * @Description: 用户的数据模型
 * @author lixiangling
 * @date   2018/08/28 16:10:56
 * @version V1.0.0
 * ----------------------------------------------------------------------------
 *  modifyer    modifyTime                 comment
 *
 * ----------------------------------------------------------------------------
 *
 */
//@Entity
@Table(name = "rf_user")
public class User{

	@Column(name = "user_id_tmp" , nullable = false)
	/** 会员ID即登录帐号 */
	private String userIdTmp;
	@Column(name = "user_pwd" , nullable = false)
	/** 登录密码 */
	private String userPwd;
	@Column(name = "user_name" , nullable = false)
	/** 会员名称 */
	private String userName;
	@Column(name = "user_image_url" , nullable = false)
	/** 会员头像 */
	private String userImageUrl;
	@Column(name = "user_gender" , nullable = false)
	/** 会员性别 数据字典 */
	private String userGender;
	@Column(name = "user_mobile_phone" , nullable = false)
	/** 会员电话 */
	private String userMobilePhone;
	@Column(name = "mobile_carriers" , nullable = false)
	/** 会员电话所属运营商 */
	private String mobileCarriers;
	@Column(name = "user_email" , nullable = false)
	/** 会员邮箱 */
	private String userEmail;
	@Column(name = "user_level" , nullable = false)
	/** 会员等级 数据字典 */
	private String userLevel;
	@Column(name = "user_status" , nullable = false)
	/** 会员状态 */
	private Integer userStatus;
	@Column(name = "bind_pad_max" , nullable = false)
	/** 绑定设备最大数 */
	private Long bindPadMax;
	@Column(name = "reset_validata_code" , nullable = false)
	/** 重置密码验证码 */
	private String resetValidataCode;
	@Column(name = "reset_validata_time" , nullable = false)
	/** 重置密码验证码有效期 */
	private Date resetValidataTime;
	@Column(name = "register_ip" , nullable = false)
	/** 注册IP */
	private String registerIp;
	@Column(name = "login_type" , nullable = false)
	/** 登录方式 网页、客户端（android 、IOS、PC） */
	private String loginType;
	@Column(name = "login_ip" , nullable = false)
	/** 登录IP */
	private String loginIp;
	@Column(name = "login_time" , nullable = false)
	/** 登录时间 */
	private Date loginTime;
	@Column(name = "login_count" , nullable = false)
	/** 登录次数 */
	private Long loginCount;
	@SoftDelete
	@Column(name = "status" , nullable = false)
	/** 状态 */
	private Integer status;
	@Column(name = "creater" , nullable = false)
	/** 创建人 */
	private String creater;
	@Column(name = "create_time" , nullable = false)
	/** 创建时间 */
	private Date createTime;
	@Column(name = "modifier" , nullable = false)
	/** 修改人 */
	private String modifier;
	@Column(name = "modify_time" , nullable = false)
	/** 修改时间 */
	private Date modifyTime;
	@Column(name = "reorder" , nullable = false)
	/** 排序 */
	private Long reorder;
	@Column(name = "remark" , nullable = false)
	/** 备注 */
	private String remark;
	@Column(name = "enable_status" , nullable = false)
	/** 启用状态 启用-1、禁用-0 */
	private Integer enableStatus;
	@Column(name = "user_birth" , nullable = false)
	/** 出生日期 */
	private Date userBirth;
	@Column(name = "card_id" , nullable = false)
	/** 身份证号 */
	private String cardId;
	@Column(name = "first_apply_status" , nullable = false)
	/** 是否首次申请普通设备 */
	private Integer firstApplyStatus;
	@Column(name = "left_online_time" , nullable = false)
	/** 剩余在线时间（天） */
	private Long leftOnlineTime;
	@Column(name = "rbc_amount" , nullable = false)
	/** 当前红豆币 */
	private Long rbcAmount;
	@Column(name = "user_email_pwd" , nullable = false)
	/** 邮箱登录密码 */
	private String userEmailPwd;
	@Column(name = "edu" , nullable = false)
	/** 学历 */
	private String edu;
	@Column(name = "occupation" , nullable = false)
	/** 职业 */
	private String occupation;
	@Column(name = "nick_name" , nullable = false)
	/** 昵称 */
	private String nickName;
	@Column(name = "address" , nullable = false)
	/** 地址 */
	private String address;
	@Column(name = "qq" , nullable = false)
	/** QQ */
	private String qq;
	@Column(name = "wechat" , nullable = false)
	/** 微信 */
	private String wechat;
	@Column(name = "mobile_bind_status" , nullable = false)
	/** 手机号码绑定 */
	private Integer mobileBindStatus;
	@Column(name = "pad_login_daily_status" , nullable = false)
	/** 每日登录设备状态 */
	private Integer padLoginDailyStatus;
	@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "seq_user")
	@Column(name = "user_id" , nullable = false)
	/** 用户ID */
	private Long userId;
	@Column(name = "apply_exper_status" , nullable = false)
	/** 是否首次申请vip设备体验 */
	private Integer applyExperStatus;
	@Column(name = "invite_user_id" , nullable = false)
	/** 邀请人ID（非邀请码注册为空） */
	private Long inviteUserId;
	@Column(name = "user_source" , nullable = false)
	/** 客户端编号 */
	private String userSource;
	@Column(name = "first_probational_status" , nullable = false)
	/** 是否首次申请体验设备 */
	private Integer firstProbationalStatus;
	@Column(name = "score_amount" , nullable = false)
	/** 用户积分 */
	private Long scoreAmount;
	@Column(name = "score_grade" , nullable = false)
	/** 积分等级 */
	private Long scoreGrade;
	@Column(name = "mailbox_verification_code" , nullable = false)
	/**  */
	private String mailboxVerificationCode;
	@Column(name = "email_expire_time" , nullable = false)
	/**  */
	private Date emailExpireTime;
	@Column(name = "bind_pad_validata_code" , nullable = false)
	/**  */
	private String bindPadValidataCode;
	@Column(name = "bind_pad_expire_time" , nullable = false)
	/**  */
	private Date bindPadExpireTime;
	@Column(name = "version" , nullable = false)
	/**  */
	private String version;
	@Column(name = "bound_pad_count" , nullable = false)
	/** 绑定过的设备数 */
	private Long boundPadCount;
	@Column(name = "client" , nullable = false)
	/** 客户端类型，android、win、ios */
	private String client;
	@Column(name = "imei" , nullable = false)
	/**  */
	private String imei;
	@Column(name = "limit_use" , nullable = false)
	/** 限制使用，1是、0否 */
	private String limitUse;
	@Column(name = "external_user_id" , nullable = false)
	/** 客户端的user_id */
	private Long externalUserId;
	@Column(name = "auth_type" , nullable = false)
	/** 验证方式 1:现在支付身份验证 0:不验证  空表示未验证 */
	private String authType;
	@Column(name = "user_classify" , nullable = false)
	/** 用户类型,1代表个人会员。2代表工作室会员 */
	private String userClassify;
	@Column(name = "openid" , nullable = false)
	/** 第三方登录唯一标识 */
	private String openid;
	@Column(name = "openid_type" , nullable = false)
	/** 1:微信,2:qq,3:微博 */
	private String openidType;
	@Column(name = "invite_type" , nullable = false)
	/** 邀请类型1：任务邀请，2：活动邀请,3:七夕活动 */
	private String inviteType;
	@Column(name = "unionid" , nullable = false)
	/** 微信unionid */
	private String unionid;


	
	public void setUserIdTmp(String userIdTmp){
		this.userIdTmp = userIdTmp;
	}
	
	public String getUserIdTmp(){
		return this.userIdTmp;
	}
	
	public void setUserPwd(String userPwd){
		this.userPwd = userPwd;
	}
	
	public String getUserPwd(){
		return this.userPwd;
	}
	
	public void setUserName(String userName){
		this.userName = userName;
	}
	
	public String getUserName(){
		return this.userName;
	}
	
	public void setUserImageUrl(String userImageUrl){
		this.userImageUrl = userImageUrl;
	}
	
	public String getUserImageUrl(){
		return this.userImageUrl;
	}
	
	public void setUserGender(String userGender){
		this.userGender = userGender;
	}
	
	public String getUserGender(){
		return this.userGender;
	}
	
	public void setUserMobilePhone(String userMobilePhone){
		this.userMobilePhone = userMobilePhone;
	}
	
	public String getUserMobilePhone(){
		return this.userMobilePhone;
	}
	
	public void setMobileCarriers(String mobileCarriers){
		this.mobileCarriers = mobileCarriers;
	}
	
	public String getMobileCarriers(){
		return this.mobileCarriers;
	}
	
	public void setUserEmail(String userEmail){
		this.userEmail = userEmail;
	}
	
	public String getUserEmail(){
		return this.userEmail;
	}
	
	public void setUserLevel(String userLevel){
		this.userLevel = userLevel;
	}
	
	public String getUserLevel(){
		return this.userLevel;
	}
	
	public void setUserStatus(Integer userStatus){
		this.userStatus = userStatus;
	}
	
	public Integer getUserStatus(){
		return this.userStatus;
	}
	
	public void setBindPadMax(Long bindPadMax){
		this.bindPadMax = bindPadMax;
	}
	
	public Long getBindPadMax(){
		return this.bindPadMax;
	}
	
	public void setResetValidataCode(String resetValidataCode){
		this.resetValidataCode = resetValidataCode;
	}
	
	public String getResetValidataCode(){
		return this.resetValidataCode;
	}
	
	public void setResetValidataTime(Date resetValidataTime){
		this.resetValidataTime = resetValidataTime;
	}
	
	public Date getResetValidataTime(){
		return this.resetValidataTime;
	}
	
	public void setRegisterIp(String registerIp){
		this.registerIp = registerIp;
	}
	
	public String getRegisterIp(){
		return this.registerIp;
	}
	
	public void setLoginType(String loginType){
		this.loginType = loginType;
	}
	
	public String getLoginType(){
		return this.loginType;
	}
	
	public void setLoginIp(String loginIp){
		this.loginIp = loginIp;
	}
	
	public String getLoginIp(){
		return this.loginIp;
	}
	
	public void setLoginTime(Date loginTime){
		this.loginTime = loginTime;
	}
	
	public Date getLoginTime(){
		return this.loginTime;
	}
	
	public void setLoginCount(Long loginCount){
		this.loginCount = loginCount;
	}
	
	public Long getLoginCount(){
		return this.loginCount;
	}
	
	public void setStatus(Integer status){
		this.status = status;
	}
	
	public Integer getStatus(){
		return this.status;
	}
	
	public void setCreater(String creater){
		this.creater = creater;
	}
	
	public String getCreater(){
		return this.creater;
	}
	
	public void setCreateTime(Date createTime){
		this.createTime = createTime;
	}
	
	public Date getCreateTime(){
		return this.createTime;
	}
	
	public void setModifier(String modifier){
		this.modifier = modifier;
	}
	
	public String getModifier(){
		return this.modifier;
	}
	
	public void setModifyTime(Date modifyTime){
		this.modifyTime = modifyTime;
	}
	
	public Date getModifyTime(){
		return this.modifyTime;
	}
	
	public void setReorder(Long reorder){
		this.reorder = reorder;
	}
	
	public Long getReorder(){
		return this.reorder;
	}
	
	public void setRemark(String remark){
		this.remark = remark;
	}
	
	public String getRemark(){
		return this.remark;
	}
	
	public void setEnableStatus(Integer enableStatus){
		this.enableStatus = enableStatus;
	}
	
	public Integer getEnableStatus(){
		return this.enableStatus;
	}
	
	public void setUserBirth(Date userBirth){
		this.userBirth = userBirth;
	}
	
	public Date getUserBirth(){
		return this.userBirth;
	}
	
	public void setCardId(String cardId){
		this.cardId = cardId;
	}
	
	public String getCardId(){
		return this.cardId;
	}
	
	public void setFirstApplyStatus(Integer firstApplyStatus){
		this.firstApplyStatus = firstApplyStatus;
	}
	
	public Integer getFirstApplyStatus(){
		return this.firstApplyStatus;
	}
	
	public void setLeftOnlineTime(Long leftOnlineTime){
		this.leftOnlineTime = leftOnlineTime;
	}
	
	public Long getLeftOnlineTime(){
		return this.leftOnlineTime;
	}
	
	public void setRbcAmount(Long rbcAmount){
		this.rbcAmount = rbcAmount;
	}
	
	public Long getRbcAmount(){
		return this.rbcAmount;
	}
	
	public void setUserEmailPwd(String userEmailPwd){
		this.userEmailPwd = userEmailPwd;
	}
	
	public String getUserEmailPwd(){
		return this.userEmailPwd;
	}
	
	public void setEdu(String edu){
		this.edu = edu;
	}
	
	public String getEdu(){
		return this.edu;
	}
	
	public void setOccupation(String occupation){
		this.occupation = occupation;
	}
	
	public String getOccupation(){
		return this.occupation;
	}
	
	public void setNickName(String nickName){
		this.nickName = nickName;
	}
	
	public String getNickName(){
		return this.nickName;
	}
	
	public void setAddress(String address){
		this.address = address;
	}
	
	public String getAddress(){
		return this.address;
	}
	
	public void setQq(String qq){
		this.qq = qq;
	}
	
	public String getQq(){
		return this.qq;
	}
	
	public void setWechat(String wechat){
		this.wechat = wechat;
	}
	
	public String getWechat(){
		return this.wechat;
	}
	
	public void setMobileBindStatus(Integer mobileBindStatus){
		this.mobileBindStatus = mobileBindStatus;
	}
	
	public Integer getMobileBindStatus(){
		return this.mobileBindStatus;
	}
	
	public void setPadLoginDailyStatus(Integer padLoginDailyStatus){
		this.padLoginDailyStatus = padLoginDailyStatus;
	}
	
	public Integer getPadLoginDailyStatus(){
		return this.padLoginDailyStatus;
	}
	
	public void setUserId(Long userId){
		this.userId = userId;
	}
	
	public Long getUserId(){
		return this.userId;
	}
	
	public void setApplyExperStatus(Integer applyExperStatus){
		this.applyExperStatus = applyExperStatus;
	}
	
	public Integer getApplyExperStatus(){
		return this.applyExperStatus;
	}
	
	public void setInviteUserId(Long inviteUserId){
		this.inviteUserId = inviteUserId;
	}
	
	public Long getInviteUserId(){
		return this.inviteUserId;
	}
	
	public void setUserSource(String userSource){
		this.userSource = userSource;
	}
	
	public String getUserSource(){
		return this.userSource;
	}
	
	public void setFirstProbationalStatus(Integer firstProbationalStatus){
		this.firstProbationalStatus = firstProbationalStatus;
	}
	
	public Integer getFirstProbationalStatus(){
		return this.firstProbationalStatus;
	}
	
	public void setScoreAmount(Long scoreAmount){
		this.scoreAmount = scoreAmount;
	}
	
	public Long getScoreAmount(){
		return this.scoreAmount;
	}
	
	public void setScoreGrade(Long scoreGrade){
		this.scoreGrade = scoreGrade;
	}
	
	public Long getScoreGrade(){
		return this.scoreGrade;
	}
	
	public void setMailboxVerificationCode(String mailboxVerificationCode){
		this.mailboxVerificationCode = mailboxVerificationCode;
	}
	
	public String getMailboxVerificationCode(){
		return this.mailboxVerificationCode;
	}
	
	public void setEmailExpireTime(Date emailExpireTime){
		this.emailExpireTime = emailExpireTime;
	}
	
	public Date getEmailExpireTime(){
		return this.emailExpireTime;
	}
	
	public void setBindPadValidataCode(String bindPadValidataCode){
		this.bindPadValidataCode = bindPadValidataCode;
	}
	
	public String getBindPadValidataCode(){
		return this.bindPadValidataCode;
	}
	
	public void setBindPadExpireTime(Date bindPadExpireTime){
		this.bindPadExpireTime = bindPadExpireTime;
	}
	
	public Date getBindPadExpireTime(){
		return this.bindPadExpireTime;
	}
	
	public void setVersion(String version){
		this.version = version;
	}
	
	public String getVersion(){
		return this.version;
	}
	
	public void setBoundPadCount(Long boundPadCount){
		this.boundPadCount = boundPadCount;
	}
	
	public Long getBoundPadCount(){
		return this.boundPadCount;
	}
	
	public void setClient(String client){
		this.client = client;
	}
	
	public String getClient(){
		return this.client;
	}
	
	public void setImei(String imei){
		this.imei = imei;
	}
	
	public String getImei(){
		return this.imei;
	}
	
	public void setLimitUse(String limitUse){
		this.limitUse = limitUse;
	}
	
	public String getLimitUse(){
		return this.limitUse;
	}
	
	public void setExternalUserId(Long externalUserId){
		this.externalUserId = externalUserId;
	}
	
	public Long getExternalUserId(){
		return this.externalUserId;
	}
	
	public void setAuthType(String authType){
		this.authType = authType;
	}
	
	public String getAuthType(){
		return this.authType;
	}
	
	public void setUserClassify(String userClassify){
		this.userClassify = userClassify;
	}
	
	public String getUserClassify(){
		return this.userClassify;
	}
	
	public void setOpenid(String openid){
		this.openid = openid;
	}
	
	public String getOpenid(){
		return this.openid;
	}
	
	public void setOpenidType(String openidType){
		this.openidType = openidType;
	}
	
	public String getOpenidType(){
		return this.openidType;
	}
	
	public void setInviteType(String inviteType){
		this.inviteType = inviteType;
	}
	
	public String getInviteType(){
		return this.inviteType;
	}
	
	public void setUnionid(String unionid){
		this.unionid = unionid;
	}
	
	public String getUnionid(){
		return this.unionid;
	}
}